home *** CD-ROM | disk | FTP | other *** search
/ 8bitfiles.net/archives / archives.tar / archives / compuserve-file-archive / 09 Application Software / GC1.SDA / MAIN PROGRAM (.txt) < prev    next >
Commodore BASIC  |  2019-04-13  |  10KB  |  315 lines

  1. 10 REM MAIN PROGRAM
  2. 20 REM WRITTEN BY KURT BRANDON
  3. 30 REM THE PRINTER PORTION OF THIS
  4. 40 REM PROGRAM WAS WRITTEN FOR THE
  5. 50 REM STAR NX-1000 PRINTER.
  6. 60 REM THE INTERFACE IS OPENED
  7. 70 REM IN TRANSPARENT MODE (SA=5)
  8. 80 :
  9. 90 REM THE EQUATES IN THE FIRST LINES
  10. 100 REM OF THE PROGRAM SHOULD ALLOW
  11. 110 REM CUSTOMIZING THE PROGRAM FOR
  12. 120 REM OTHER PRINTERS WITHOUT A MAJOR
  13. 130 REM REWRITE. ENJOY!
  14. 140 REM
  15. 150 :
  16. 160 DN=PEEK(186):REM DISK DRIVE ADDRESS
  17. 170 PN=4:REM PRINTER DEVICE NUMBER
  18. 180 TM=5:REM SECONDARY ADDRESS FOR TRANSPARENT MODE
  19. 190 UL=223:REM ASCII VALUE OF UNDERLINE CHARACTER
  20. 200 Z$=CHR$(0)
  21. 210 ES$=CHR$(27):REM PRINTER ESCAPE CODE
  22. 220 SE$=CHR$(68)+CHR$(17)+Z$:REM SET A TAB AT COLUMN 17
  23. 230 LS$=CHR$(65)+CHR$(9):REM SET LINE SPACING TO 1/8 INCH
  24. 240 TA$=CHR$(9):REM TAB COMMAND
  25. 250 RS$=CHR$(64):REM PRINTER RESET COMMAND
  26. 260 LF$=CHR$(10):REM LINEFEED COMMAND
  27. 270 DS$=ES$+CHR$(83)+CHR$(48)+"O"+ES$+CHR$(84)
  28. 280 REM DS$ IS A SUPERSCRIPT "O" AND IS USED FOR THE DEGREE SYMBOL
  29. 290 :
  30. 300 :
  31. 310 :
  32. 320 POKE53281,1:POKE53280,13
  33. 330 PRINTCHR$(142)"[147]";
  34. 340 PRINT"[146]  [144][213][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][201]"
  35. 350 PRINT"  bBEARING AND GREAT-CIRCLE DISTANCEb"
  36. 360 PRINT"  jccccccccccccccccccccccccccccccccck"
  37. 370 AD=53272
  38. 380 DIMOP$(300):OP$(0)=Z$
  39. 390 FORI=1TO30:EB$=EB$+CHR$(UL):NEXT
  40. 400 FORI=49152TO49703:READA:POKEI,A:NEXT
  41. 410 DATA169,0,141,35,194,32,175,193,176,79,32,90,192,32,230,192,32
  42. 420 DATA120,193,32,139,193,32,158,192,32,250,192,173,33,194,208,3,76
  43. 430 DATA47,192,173,34,194,208,3,76,47,192,32,25,193,32,101,193,176
  44. 440 DATA3,76,22,192,173,19,194,133,3,173,20,194,133,4,173,35,194
  45. 450 DATA208,8,32,120,193,32,159,193,176,11,169,0,141,35,194,32,139
  46. 460 DATA193,76,22,192,96,160,4,177,251,141,18,194,24,165,251,105,5
  47. 470 DATA133,251,165,252,105,0,133,252,172,18,194,136,240,16,24,165,251
  48. 480 DATA105,2,133,251,165,252,105,0,133,252,136,208,240,56,165,251,233
  49. 490 DATA1,133,3,141,19,194,165,252,233,0,133,4,141,20,194,32,0
  50. 500 DATA226,142,39,194,96,173,21,194,141,23,194,141,25,194,173,22,194
  51. 510 DATA141,24,194,141,26,194,14,23,194,46,24,194,24,173,23,194,109
  52. 520 DATA25,194,141,23,194,173,24,194,109,26,194,141,24,194,24,165,3
  53. 530 DATA105,3,133,3,165,4,105,0,133,4,24,165,3,109,23,194,133
  54. 540 DATA5,165,4,109,24,194,133,6,96,160,1,177,251,141,27,194,141
  55. 550 DATA31,194,136,177,251,141,28,194,141,32,194,96,160,0,177,3,141
  56. 560 DATA33,194,177,5,141,34,194,200,177,3,133,98,177,5,133,100,200
  57. 570 DATA177,3,133,99,177,5,133,101,96,173,39,194,41,1,201,0,240
  58. 580 DATA4,32,233,193,96,160,0,177,98,209,100,144,23,208,22,200,204
  59. 590 DATA34,194,144,10,173,34,194,205,33,194,208,8,240,5,204,33,194
  60. 600 DATA144,227,96,169,1,141,35,194,32,79,193,96,160,0,177,3,153
  61. 610 DATA36,194,177,5,145,3,185,36,194,145,5,200,192,3,144,237,96
  62. 620 DATA206,29,194,208,3,206,30,194,173,30,194,201,255,240,2,24,96
  63. 630 DATA56,96,78,32,194,110,31,194,173,31,194,141,21,194,173,32,194
  64. 640 DATA141,22,194,96,56,173,27,194,237,21,194,141,29,194,173,28,194
  65. 650 DATA237,22,194,141,30,194,96,173,22,194,208,9,173,21,194,201,0
  66. 660 DATA208,2,56,96,24,96,165,47,164,48,133,251,132,252,32,139,176
  67. 670 DATA160,0,177,251,197,69,240,9,200,208,247,230,252,208,243,56,96
  68. 680 DATA200,208,2,230,252,177,251,197,70,208,230,192,0,208,2,198,252
  69. 690 DATA136,152,24,101,251,133,251,144,2,230,252,24,96,160,0,177,100
  70. 700 DATA209,98,144,23,208,22,200,204,33,194,144,10,173,33,194,205,34
  71. 710 DATA194,208,8,240,5,204,34,194,144,227,96,169,1,141,35,194,32
  72. 720 DATA79,193,96,0,0,0,0,0,0,0,0,0,0,0,0,0,0
  73. 730 DATA0,0,0,0,0,0,0,0
  74. 740 PRINT"         CENTRAL-STATION MODE?":PRINT"               (Y/N)"
  75. 750 GETCS$:IFCS$=""THEN750
  76. 760 IFCS$<>"Y"ANDCS$<>"N"THEN750
  77. 770 SF$="":OPEN15,DN,15,"I0"
  78. 780 PL$="MEDFORD OREGON":LA=42.316:LO=122.866
  79. 790 NP$="                              ":RT$=CHR$(13):SB$="         "
  80. 800 POKE650,255
  81. 810 DEFFNDS(R)=(R-INT(R))
  82. 820 D=1:K=111.11:M=57.2957795:N=60:S=69.041
  83. 830 BF$="                                    "
  84. 840 REM MAX FIELD SIZES: LOCATION,30...LATITUDE AND LONGITUDE,11 EACH
  85. 850 PRINT"[147]"
  86. 860 IFCS$="Y"THEN940
  87. 870 OK$="":SA$="":PRINT"YOUR LOCATION"RT$:INPUTSA$:IFSA$=""THEN2870
  88. 880 IFLEN(SA$)>30THENPRINT"  MORE THAN 30 CHARACTERS":GOTO860
  89. 890 GOSUB2270:IFTL=1THENTL=0:GOTO880
  90. 900 GOSUB2400
  91. 910 IFNR=1THENGOSUB2540
  92. 920 IFOK$<>"N"THEN940
  93. 930 PRINT"[145][145][145][145][145][145]":FORI=1TO6:PRINTBF$:NEXT:PRINT"[145][145][145][145][145][145][145][145]":GOTO860
  94. 940 RV=LA:A=RV:A1=RV:A=A/M:N1$=PL$:GOSUB2120
  95. 950 AD$=RV$:BD$=R1$:RV=LO:L1=RV:GOSUB2120:T2$=RV$:U2$=R1$
  96. 960 OK$="":SA$="":PRINT"OTHER LOCATION"RT$:INPUTSA$:IFSA$=""THEN2870
  97. 970 IFLEN(SA$)>30THENPRINT"  MORE THAN 30 CHARACTERS":GOTO960
  98. 980 GOSUB2270:IFTL=1THENTL=0:GOTO880
  99. 990 GOSUB2400
  100. 1000 IFNR=1THENGOSUB2540
  101. 1010 IFOK$<>"N"THEN1030
  102. 1020 PRINT"[145][145][145][145][145][145]":FORI=1TO6:PRINTBF$:NEXT:PRINT"[145][145][145][145][145][145][145][145][145][145][145][145]":GOTO960
  103. 1030 RV=LA:B=RV:A2=RV:B=B/M:N2$=PL$
  104. 1040 GOSUB2120:A2$=RV$:B2$=R1$:RV=LO:L2=RV:GOSUB2120:LT$=RV$:MT$=R1$
  105. 1050 L=(L1-L2)/M:E=SIN(A)*SIN(B)+COS(A)*COS(B)*COS(L)
  106. 1060 D=-ATN(E/SQR(1-E*E))+1.57079:C=(SIN(B)-SIN(A)*E)/(COS(A)*SIN(D))
  107. 1070 IFC>=1THENC=0:GOTO1100
  108. 1080 IFC<=-1THENC=180/M:GOTO1100
  109. 1090 C=-ATN(C/SQR(1-C*C))+1.57079
  110. 1100 C=C*M
  111. 1110 IFSIN(L)<0THENC=360-C
  112. 1120 DG=C:MZ=60*FNDS(C):SC=60*FNDS(MZ)
  113. 1130 DG$=STR$(INT(DG)):MZ$=STR$(INT(MZ+.5))
  114. 1140 H1$="N":H2$="N":L1$="W":L2$="W":IFA1<0THENH1$="S"
  115. 1150 IFL1<0THENL1$="E"
  116. 1160 IFA2<0THENH2$="S"
  117. 1170 IFL2<0THENL2$="E"
  118. 1180 PRINT"[147]"N1$
  119. 1190 PRINTSF$ABS(INT(1000*A1)/1000);TAB(17)H1$;:PRINTTAB(20)""AD$"[144]"
  120. 1200 PRINTSF$ABS(INT(1000*L1)/1000);TAB(17)L1$;:PRINTTAB(20)""T2$"[144]"
  121. 1210 PRINT:PRINT""N2$:PRINTSF$ABS(INT(1000*A2)/1000);TAB(17)H2$;
  122. 1220 PRINTTAB(20)""A2$"[144]":PRINTSF$ABS(INT(1000*L2)/1000);TAB(17)L2$;
  123. 1230 PRINTTAB(20)""LT$"[144]"
  124. 1240 PRINT"BEARING"INT(1000*C)/1000"DEG":PRINTSF$DG$"[188]"MZ$"'"
  125. 1250 PRINT"DISTANCES"
  126. 1260 PRINT""INT(K*D*M)TAB(11)"KILOMETERS"
  127. 1270 PRINT""INT(S*D*M)TAB(11)"STATUTE MILES"
  128. 1280 PRINT""INT(N*D*M)TAB(11)"NAUTICAL MILES"
  129. 1290 PRINT" [164][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164] "
  130. 1300 PRINT"COMPUTE AGAIN FROM YOUR LOCATION? (Y/N)
  131. 1310 [153]SF$"PSTOP FOR PRINTED OUTPUT"
  132. 1320 [139]CS$[178]"N"[167][153]SF$"ISTOP TO INVERT PLACE NAMES"
  133. 1330 [153]SF$"VSTOP TO VIEW/SET TEXT KEYS"
  134. 1340 [139]CS$[178]"Y"[167][153]SF$"   CENTRAL-STATION MODE"
  135. 1350 [161]A$:[139]A$[178]""[167]1350
  136. 1360 [139]A$[178]"Y"[167][141]3140:[137]960
  137. 1370 YG[178][184](0):[139]CS$[178]"N"[167][139]A$[178]"N"[167][137]850
  138. 1380 [139]A$[178]"P"[167][141]1960
  139. 1390 [139]CS$[178]"N"[167][139]A$[178]"I"[167][141]2200:[137]1050
  140. 1400 [139]A$[178]"V"[167][141]2940:[137]1180
  141. 1410 [137]1350
  142. 1420 :
  143. 1430 :
  144. 1440 :
  145. 1450 [143]\     POSITION & ERROR SUB
  146. 1460 RH[178][181](RN[173]256):RL[178]RN[171](256[172]RH)
  147. 1470 [152]15,"P"[170][199](96[170]8)[170][199](RL)[170][199](RH)[170][199](1)
  148. 1480 [132]15,E,E$,AA,B
  149. 1490 [139] E[178]0[176]E[178]50[167][142]
  150. 1500 [153]E;E$;AA;B
  151. 1510 [160]8:[160]15:[144]
  152. 1520 :
  153. 1530 :
  154. 1540 :
  155. 1550 [143]\      INPUT SUB
  156. 1560 S$[178]"":CC[178]0:DP[178]0:MP[178]0:SP[178]0:HM[178]0:DM[178]0:SG[178]1
  157. 1570 [150][165]VC(X)[178](X[177][178]48[175]X[179][178]57)[176](X[178]78[176]X[178]83[176]X[178]69[176]X[178]87[176]X[178]58[176]X[178]20[176]X[178]13[176]CV[178]46)
  158. 1580 [129]KI[178]0[164]40
  159. 1590 [139]KI[178]0[167][153]" WAITCMD";
  160. 1600 [139]KI[178]20[167][153]" CMD";
  161. 1610 [161]A$:[139]A$[179][177]""[167][137]1630
  162. 1620 [130]KI:[137]1580
  163. 1630 CV[178][198](A$):[139][165]VC(CV)[178]0[167][137]1580
  164. 1640 [139]CV[178]13[176]CV[178]20[167][153]" CMD";
  165. 1650 [139]CV[179][177]13[175]CV[179][177]20[167]CC[178]CC[170]1:[153]A$;:[139]CV[179][177]58[167]S$[178]S$[170]A$
  166. 1660 [139]CC[178]0[167][137]1700
  167. 1670 [139]CV[179][177]20[167][137]1700
  168. 1680 [129]KI[178]1[164]CC:[153]"CMD";:[130]:[129]KI[178]1[164]CC:[153]"CLOSE";:[130]:[129]KI[178]1[164]CC:[153]"CMD";:[130]
  169. 1690 [137]1560
  170. 1700 [139]CV[178]58[175]DM[178]0[167]DP[178][197](S$):DM[178]1:S$[178]"":[137]1580
  171. 1710 [139]CV[178]58[175]DM[178]1[167]MP[178][197](S$):DM[178]2:S$[178]"":[137]1580
  172. 1720 [139]DM[178]1[175]CV[178]13[167]MP[178][197](S$):S$[178]"":[137]1770
  173. 1730 [139]DM[178]2[175]CV[178]13[167]SP[178][197](S$):S$[178]"":[137]1770
  174. 1740 [139]CV[178]78[176]CV[178]87[167]SG[178]1:CV[178]58:[137]1700
  175. 1750 [139]CV[178]83[176]CV[178]69[167]SG[178][171]1:CV[178]58:[137]1700
  176. 1760 [139]CV[178]78[176]CV[178]87[176]CV[178]83[176]CV[178]69[167]SP[178][197](S$)
  177. 1770 [139]CV[178]13[175](DM[178]1[176]DM[178]2)[167]RV[178](DP[170]MP[173]60[170]SP[173]3600)[172]SG:[142]
  178. 1780 [139]CV[178]13[175]DM[178]0[167]RV[178][197](S$)[172]SG:[142]
  179. 1790 [137]1580
  180. 1800 [139]D[179][177]1[167][137]1770
  181. 1810 :
  182. 1820 :
  183. 1830 :
  184. 1840 :
  185. 1850 [143]\ INPUT EXPLANATION SUB
  186. 1860 [153]"LOADTO ENTER LOCATIONS":[153]" DECIMAL: XXX.XX "
  187. 1870 [153]" DEG/MIN/SEC: DD:MM:SS"
  188. 1880 [153]" FOLLOW COORDINATE"
  189. 1890 [153]" WITH ESTOP FOR EAST LONGITUDE (DEFAULT:WSTOP)"
  190. 1900 [153]"   OR SSTOP FOR SOUTH LATITUDE (DEFAULT:NSTOP)"
  191. 1910 [153]" AFTER ENTRY, RETURNSTOP"
  192. 1920 [153]" LENLENLENLENLENLENLENLENLENLENLENLENLENLENLENLENLENLENLENLENLENLENLENLENLENLENLENLENLENLENLENLENLENLENLENLENLEN":[142]
  193. 1930 :
  194. 1940 :
  195. 1950 [143]\      PRINTER OUTPUT SUB
  196. 1960 [159]1,PN,TM:[152]1,ES$LS$
  197. 1970 [152]1,ES$SE$
  198. 1980 [152]1,N1$LF$:[152]1,"     "[182]([181](1000[172]A1))[173]1000H1$TA$;BD$LF$
  199. 1990 [152]1,"     "[182]([181](1000[172]L1))[173]1000L1$TA$;U2$LF$:[152]1,N2$LF$
  200. 2000 [152]1,"     "[182]([181](1000[172]A2))[173]1000H2$TA$;B2$LF$
  201. 2010 [152]1,"     "[182]([181](1000[172]L2))[173]1000L2$TA$;MT$LF$
  202. 2020 [152]1,"BEARING"LF$:[152]1,"     "[181](1000[172]C)[173]1000"DEG"LF$
  203. 2030 [152]1,"     "DG$DS$MZ$"'"LF$:[152]1,"DISTANCES"LF$
  204. 2040 [152]1,"     "[181](K[172]D[172]M)"KILOMETERS"LF$
  205. 2050 [152]1,"     "[181](S[172]D[172]M)"STATUTE MILES"LF$
  206. 2060 [152]1,"     "[181](N[172]D[172]M)"NAUTICAL MILES"LF$:[152]1,EB$LF$:[152]1,LF$
  207. 2070 [160]1:[142]
  208. 2080 :
  209. 2090 :
  210. 2100 :
  211. 2110 [143]\  DEGREES-MINUTES-SECONDS SUB
  212. 2120 RV[178][182](RV)
  213. 2130 DP[178][181](RV):MP[178]60[172][165]DS(RV):SP[178]60[172][165]DS(MP):MP[178][181](MP[170].5):DM[178]1
  214. 2140 RV$[178][196](DP)[170]"LOG"[170][196](MP)[170]"'"
  215. 2150 R1$[178][196](DP)[170]DS$[170][196](MP)[170]"'":[142]
  216. 2160 :
  217. 2170 :
  218. 2180 :
  219. 2190 [143]\     INVERT PLACE NAMES SUB
  220. 2200 TV[178]A1:A1[178]A2:A2[178]TV:TV$[178]H1$:H1$[178]H2$:H2$[178]TV$:TV$[178]AD$:AD$[178]A2$:A2$[178]TV$
  221. 2210 TV[178]L1:L1[178]L2:L2[178]TV:TV$[178]L1$:L1$[178]L2$:L2$[178]TV$:TV$[178]T2$:T2$[178]LT$:LT$[178]TV$
  222. 2220 TV$[178]N1$:N1$[178]N2$:N2$[178]TV$:TV[178]A:A[178]B:B[178]TV:[142]
  223. 2230 :
  224. 2240 :
  225. 2250 :
  226. 2260 [143]\  FORMAT PLACE NAME SUB
  227. 2270 K2$[178]"":[129]II[178]1[164][195](SA$):K2[178][198]([202](SA$,II,1)):K2[178]K2[175]127
  228. 2280 K2$[178]K2$[170][199](K2):[130]:SA$[178]K2$
  229. 2290 R[178][198]([201](SA$,1))
  230. 2300 [139]R[179]48[176]R[177]57[167]2320
  231. 2310 SA$[178][200](SA$,[195](SA$)[171]1)[170]SK$(R[171]48)
  232. 2320 [139][200](SA$,1)[178]" "[167]SA$[178][201](SA$,[195](SA$)[171]1):[137]2320
  233. 2330 [139][195](SA$)[179]30[167]SA$[178]SA$[170][200](NP$,30[171][195](SA$))
  234. 2340 [139][195](SA$)[177]30[167]TL[178]1
  235. 2350 [142]
  236. 2360 :
  237. 2370 :
  238. 2380 :
  239. 2390 [143]\    BINARY SEARCH SUB
  240. 2400 NR[178]0:[159]8,DN,8,[200](SA$,1):RN[178]1:[141]1460:[141]1470
  241. 2410 [132]8,MN:XI[178][188](MN)[173][188](2):XI[178][181](XI)[170]1
  242. 2420 XM[178]XI[171]1:XI[178]2[174]XI:XX[178]XI[173]2
  243. 2430 [139]XM[179]0[167]NR[178]1:[160]8:[142]
  244. 2440 XM[178]XM[171]1:RN[178]XX:[141]1460:[141]1470:[132]8,PL$,LA$,LO$
  245. 2450 [139]SA$[178]PL$[167]LA[178][197](LA$):LO[178][197](LO$):[160]8:[142]
  246. 2460 [139]SA$[179]PL$[167]XX[178]XX[171]2[174]XM:[137]2430
  247. 2470 XX[178]XX[170]2[174]XM
  248. 2480 [139]XX[177]MN[167]XX[178]MN
  249. 2490 [137]2430
  250. 2500 :
  251. 2510 :
  252. 2520 :
  253. 2530 [143]\     ADD-LOCATION SUB
  254. 2540 [153]""SA$"STOP"
  255. 2550 [153]"IS NOT IN FILE"
  256. 2560 [133]"DO YOU WANT TO ADD IT (Y/N)";OK$
  257. 2570 [139]OK$[179][177]"Y"[175]OK$[179][177]"N"[167][153]"ON":[137]2560
  258. 2580 [139]OK$[179][177]"Y"[167][142]
  259. 2590 [141]1860:[153]"LATITUDE OF":[153]""SA$"STOP":[141]1560:LA[178]RV:LA$[178][196](LA)
  260. 2600 [139][182](LA)[177]90[167]2590
  261. 2610 [139][195](LA$)[179]11[167]LA$[178]LA$[170][200](NP$,11[171][195](LA$))
  262. 2620 [153]:[153]:[153]"LONGITUDE":[141]1560:LO[178]RV:LY$[178][196](LO)
  263. 2630 [139][182](LO)[177]180[167]2620
  264. 2640 [139][195](LY$)[179]11[167]LY$[178]LY$[170][200](NP$,11[171][195](LY$))
  265. 2650 RC$[178]SA$[170]RT$[170]LA$[170]RT$[170]LY$
  266. 2660 [153]"LOADLOCATION"RT$""SA$"STOP":S$[178]"N":[139]LA[179]0[167]S$[178]"S"
  267. 2670 [153]"LATITUDE:"[163]13)[182](LA);[163]25)S$;
  268. 2680 RV[178]LA:[141]2120:[153][163]25)""RV$"STOP"
  269. 2690 S$[178]"W":[139]LO[179]0[167]S$[178]"E"
  270. 2700 [153]"LONGITUDE:"[163]13)[182](LO);[163]25)S$;:RV[178]LO:[141]2120
  271. 2710 [153][163]25)""RV$"STOP"
  272. 2720 [153]"  IS THIS CORRECT?  (Y/N)"
  273. 2730 [161]A$:[139]A$[179][177]"N"[175]A$[179][177]"Y"[167][137]2730
  274. 2740 [139]A$[178]"N"[167]2590
  275. 2750 [153]"LOADMERGING: "SA$"STOP"
  276. 2760 [153]"INITIALIZING":[129]II[178]1[164]300:OP$(II)[178]"":[130]:OP$(1)[178]RC$
  277. 2770 [153]"LOADING RECORDS":[159]8,DN,8,[200](SA$,1):RN[178]1
  278. 2780 [141]1460:[141]1470:[132]8,MN
  279. 2790 [129]RN[178]2[164]MN:[141]1460:[141]1470:[132]8,PL$,LA$,LO$
  280. 2800 OP$(RN)[178]PL$[170]RT$[170]LA$[170]RT$[170]LO$:[130]
  281. 2810 [153]"SORTING":[158]49152OP$(1),2
  282. 2820 RN[178]1:[141]1460:[141]1470:[152]8,MN[170]1
  283. 2830 [153]"WRITING"
  284. 2840 [129]II[178]1[164]MN[170]1:RN[178]II[170]1:[141]1460:[141]1470:[152]8,OP$(II);:[130]:[160]8
  285. 2850 PL$[178]SA$:LO$[178]LY$
  286. 2860 [142]
  287. 2870 [160]8:[160]15:[159]1,PN,TM:[160]1:[139]ST[179][177]0[167]2890
  288. 2880 [159]1,PN,TM:[152]1,ES$RS$:[160]1
  289. 2890 [147]"MENU",DN
  290. 2900 :
  291. 2910 :
  292. 2920 :
  293. 2930 [143]\   TEXT-KEY ASSIGNMENT SUB
  294. 2940 [153]"LOAD(null)USRUSRUSRUSRUSRUSRUSRUSRUSRUSRUSRUSRUSRUSRUSRUSRUSRUSRUSRUSRUSRUSRUSRUSRUSRUSRUSRUSRUSRUSRUSRUSRUSR(null)"
  295. 2950 [153]"SGN                                 +"
  296. 2960 [153]"(null)ANDANDANDANDANDANDANDANDANDANDANDANDANDANDANDANDANDANDANDANDANDANDANDANDANDANDANDANDANDANDANDANDANDSQR"
  297. 2970 [153]"KEY  TEXT":[153]
  298. 2980 [129]I[178]0[164]9
  299. 2990 [153]"  "I"  "SK$(I)"WAIT"
  300. 3000 [130]:[153]:[153]:[153]:[153]:[153]"";
  301. 3010 [161]A$:[139]A$[178]""[167]3010
  302. 3020 AY[178][198](A$)
  303. 3030 [139]AY[178]13[167][142]
  304. 3040 [139]AY[178]20[175]SR$[178]""[167]3010
  305. 3050 [139]AY[178]20[167][129]KK[178]1[164][195](SR$):[153]"CMD ";:[153]"CMD";:[130]:SR$[178]"":[137]3010
  306. 3060 [139]AY[177][178]48[175]AY[179][178]57[167]SK$(AY[171]48)[178]SR$:SR$[178]"":[137]2940
  307. 3070 [139][195](SR$)[178][177]30[167]3010
  308. 3080 [139]AY[178]32[176]AY[177][178]65[175]AY[179][178]90[167]SR$[178]SR$[170]A$:[153]""A$"WAIT";
  309. 3090 [137]3010
  310. 3100 :
  311. 3110 :
  312. 3120 :
  313. 3130 [143]\   PARTIAL SCREEN CLEAR SUB
  314. 3140 [153]"":[129]JJ[178]1[164]18:[153]NP$SB$:[130]:[153]"":[142]
  315.